Wireless communication network with software modification locking

ABSTRACT

A wireless communication network comprises antenna systems, a mobile switching system, and a monitoring system. The antenna systems exchange user communications with mobile user devices in a wireless communication format. The mobile switching system has software to control operations. The mobile switching system routes the user communications between the antenna systems and network communication systems. The monitoring system determines that a software lock should be implemented for the mobile switching system, and in response, transfers a software lock instruction to the mobile switching system. The mobile switching system receives the software lock instruction and subsequently receives a request for a software modification. The mobile switching system denies the request for the software modification in response to the software lock instruction.

RELATED APPLICATIONS

Not applicable

FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT

Not applicable

MICROFICHE APPENDIX

Not applicable

BACKGROUND OF THE INVENTION

1. Field of the Invention

The invention is related to the field of wireless communications, and inparticular, to wireless communication networks that lock mobileswitching systems to prevent software modifications.

2. Description of the Prior Art

The demand for wireless communication services, such as telephony andInternet access, is rapidly growing. The growing demand has causedwireless communication networks to deploy numerous mobile switchingsystems that provide wireless communication services. A mobile switchingsystem is controlled by internal software that is frequently modified byexternal systems.

The software modifications may delete or edit the existing software oradd new software. The software modifications may be initiated manuallyby a human operator or be initiated automatically by a computer systemor process. The software modifications are often performed by thesupplier of the mobile switching system (which is typically owned by acommunication network). As the demand for wireless communicationservices grows, the amount of these software modifications has alsoincreased.

Unfortunately, wireless network personnel who need to be aware of thesoftware modifications may not be properly notified of the change. Thissituation is exacerbated when the software is automatically modified bythe supplier, because notification across the supplier-network corporateboundary may not be effective—especially when automatically initiated bya computer. Compounding the problem is a lack of information aboutsoftware modifications even when network personnel are notified.

The lack of effective notice for software modifications may be critical.For example, emergency 911 software may be automatically modified by asupplier system. The software modification could occur without propernotification to network personnel who are responsible for the emergency911 service. The software modification may cause the mobile switchingsystem to operate differently causing inter-operability issues withother systems. The inter-operability issues could degrade the emergency911 service, and the degradation of the emergency 911 service could becatastrophic.

The lack of control over software modifications can cause otherproblems. As stated above, the software modifications to mobileswitching systems may cause inter-operability issues with other systems,and these issues can lead to service degradation. Although the softwaremodifications may be a necessary at some point, there are certainscenarios where the corresponding service degradation is not acceptable.

For example, there could be a large event, such as a convention, thatwill stress particular mobile switching systems for a time period.Service degradation on those systems during that time period should beavoided. After the event, the service degradation resulting from thesoftware modifications could be better tolerated. In another example, aportion of the communication network may be down due to a fault, andservice degradation in the remaining portion of the communicationnetwork should be avoided. Again, the service degradation resulting fromthe software modifications could be better tolerated after the fault isfixed and the entire network is operational.

SUMMARY OF THE INVENTION

Examples of the invention include wireless communication systems andtheir methods of operation. In some examples, the wireless communicationnetwork comprises antenna systems, a mobile switching system, and amonitoring system. The antenna systems exchange user communications withmobile user devices in a wireless communication format and hand-off themobile user devices between one another. The mobile switching system hassoftware to control operations. The mobile switching system routes theuser communications between the antenna systems and networkcommunication systems. The mobile switching system controls thehand-offs of the mobile user devices between the antenna systems. Themonitoring system determines that a software lock should be implementedfor the mobile switching system, and in response, transfers a softwarelock instruction to the mobile switching system. The mobile switchingsystem receives the software lock instruction and subsequently receivesa request for a software modification. The mobile switching systemdenies the request for the software modification in response to thesoftware lock instruction.

In some examples, the monitoring system determines a characteristic forthe software lock, selects a set of communication network personnelbased on the characteristic, and transfers a notice indicating thesoftware lock to the selected set of the communication network personnel

In some examples, the mobile switching system indicates the deniedrequest for the software modification to the monitoring system, and themonitoring system transfers another notice indicating the denied requestto the selected set of the communication network personnel.

In some examples, the characteristic used to select the set of thecommunication network personnel comprises an identity of the mobileswitching system.

In some examples, the characteristic used to select the set of thecommunication network personnel comprises a geographic location of themobile switching system.

In some examples, the software lock is for a specific file in thesoftware, and the request for the software modification is for thespecific file. The mobile switching system denies the request for thesoftware modification to the specific file but implements other requestsfor other software modifications to other files.

In some examples, the specific file is a call processing table.

In some examples, the software lock is for a specific file structure inthe software, and the request for the software modification is for thespecific file structure. The mobile switching system denies the requestfor the software modification to the specific file structure butimplements other requests for other software modifications.

In some examples, the software lock is for a specific user, and therequest for the software modification is from the specific user. Themobile switching system denies the request for the software modificationfrom the specific user but implements other requests for other softwaremodifications from other users.

In some examples, the software lock instruction indicates a time period.The mobile switching system receives another request for the softwaremodification after the time period and implements the other request forthe software modification.

In some examples, the monitoring system receives a software lock commandand determines that the software lock should be implemented based on thesoftware lock command.

In some examples, the monitoring system determines that a softwareunlock should be implemented for the mobile switching system, and inresponse, transfers a software unlock instruction to the mobileswitching system. The mobile switching system receives the softwareunlock instruction and subsequently receives another request for thesoftware modification. The mobile switching system implements the otherrequest for the software modification in response to the software unlockinstruction.

In some examples, the monitoring system receives a software unlockcommand and determines that the software unlock should be implementedbased on the software unlock command.

In some examples, the monitoring system is transfers a notice indicatingthe software unlock to a selected set of the communication networkpersonnel.

In some examples, the mobile switching system receives another requestfor the software modification including an emergency code, andimplements the other request for the software modification in responseto the emergency code.

In some examples, the software lock instruction indicates the emergencycode.

In some examples, the mobile switching system indicates the implementedother request for the software modification to the monitoring system.The monitoring system transfers a notice indicating the implementedother request to a selected set of communication network personnel.

In some examples, the software lock is for specific files in thesoftware related to an emergency 911 service, and the request for thesoftware modification is for the specific files. The mobile switchingsystem denies the request for the software modification to the specificfiles but implements other requests for other software modifications.

In some examples, the software lock is for specific files in thesoftware related to a video communication service, and the request forthe software modification is for the specific files. The mobileswitching system denies the request for the software modification to thespecific files but implement other requests for other softwaremodifications.

In some examples, the software lock is for specific files in thesoftware related to a geographic location service, and the request forthe software modification is for the specific files. The mobileswitching system denies the request for the software modification to thespecific files but implements other requests for other softwaremodifications.

BRIEF DESCRIPTION OF THE DRAWINGS

The same reference number represents the same element on all drawings.

FIG. 1 illustrates a wireless communication network in an example of theinvention.

FIG. 2 illustrates a mobile switching system in an example of theinvention.

FIG. 3 illustrates a software update monitoring system in an example ofthe invention.

FIG. 4 illustrates the operation of a software update monitoring systemin an example of the invention.

FIG. 5 illustrates the operation of a software update monitoring systemand a mobile switching system in an example of the invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

The following description and associated figures teach the best mode ofthe invention. For the purpose of teaching inventive principles, someconventional aspects of the best mode may be simplified or omitted. Thefollowing claims specify the scope of the invention. Note that someaspects of the best mode may not fall within the scope of the inventionas specified by the claims. Thus, those skilled in the art willappreciate variations from the best mode that fall within the scope ofthe invention. Those skilled in the art will appreciate that thefeatures described below can be combined in various ways to formmultiple variations of the invention. As a result, the invention is notlimited to the specific examples described below, but only by the claimsand their equivalents.

Wireless Communication Network

FIG. 1 illustrates wireless communication network 100 in an example ofthe invention. Wireless communication network 100 includes antennasystems 101-103, mobile switching system 104, network communicationsystems 105, software update system 106, update monitoring system 107,and network personnel devices 108. Antenna systems 101-103 exchange usercommunications with mobile user devices in a wireless communicationformat over wireless communication links 111-116. The wirelesscommunication format could be Code Division Multiple Access (CDMA),Global System for Mobile communication (GSM), Wireless Fidelity (WIFI),Worldwide Interoperability Microwave Access (WIMAX), or some othercommunication format that communicates over the air without physicallines. The number of systems 101-107 has been restricted for clarity,and if desired, there could be more of these systems in network 100 thatoperate as described herein. For example, there would typically beseveral more antenna systems and mobile switching systems that operateas described below.

Antenna systems 101-103 could be cellular base stations, wirelesshotspots, or some other system that communicates with user devices usinga wireless communication format. As a user device moves around, antennasystems 101-103 may hand-off communications with that user device. Forexample, if a user device that is communicating with antenna system 101moves closer to antenna system 102, then antenna system 101 willhand-off wireless the communications with the mobile user device toantenna system 102. In some cases, the hand-off is soft, where the userdevice redundantly communicates through both antenna systems 101-102 atthe same time, and the user communications through antenna system 101are used before the hand-off, and the user communications throughantenna system 102 are used after the hand-off.

Antenna systems 101-103 and mobile switching system 104 exchange theuser communications over communication links 121-123. Mobile switchingsystem 104 and network communication systems 105 exchange some of theseuser communications over communication links 124. Mobile switchingsystem 104 also exchanges some of these user communications betweenantenna systems 101-103 without using network communication systems 105.Communication links 121-124 could use the air (wireless), metallicwires, optical fibers, or some other transport media. Communicationlinks 121-124 could use CDMA, microwave, Time Division Multiplex (TDM),Internet Protocol (IP), Ethernet, Synchronous Optical Network (SONET),Wave Division Multiplexing (WDM), or some other communicationprotocol—and various combinations of these communication protocols couldbe used.

Mobile switching system 104 routes the user communications between links121-124 to effectively route the user communications between the userdevices, or between the user devices and network communication systems105. Mobile switching system 104 also controls the hand-offs of themobile user devices between antenna systems 101-103. Mobile switchingsystem 104 could comprise a Base Station Controller (BSC), MobileSwitching Center (MSC), or some other communication system that servesthe wireless user devices through antenna systems 101-103. Networkcommunication systems 105 could comprise telephone systems, Internetaccess systems, data systems, media (audio/video) systems, serviceplatforms, or some other system that provides a communication service tothe mobile user devices.

Software update system 106 comprises a computer system that transferssoftware updates to mobile switching system 104 over communication link125. Software update system 106 could be owned and operated by thesupplier of mobile switching system 104, the owner of wireless network100, or some other entity. Software update system 106 may performsoftware updates manually under the direct control of a human operator.Alternatively, software update system 106 may perform software updatesautomatically without any direct control of a human operator.

Mobile switching system 104 has internal software that controls itsoperations. For example, the software may control the hand-offs androuting of the user communications. Mobile switching system 104 receivessoftware updates from software update system 106 over link 125. Inresponse to the software updates, mobile switching system 104 implementsthe corresponding software modification to its software.

The entity that initiates the software modification has a user ID andauthorization code that are provided along with the request to modifythe software. The initiating entity could be a human operating acomputer system, a computer system configured for automatic updates, ora computer process configured for automatic updates. Software updatesystem 106 represents all of these systems and processes. Mobileswitching system 104 has an internal authorization database that storesuser IDs and authorization codes for the entities that are authorized toinitiate software modifications. These authorizations may be restrictedto specific files in the software and specific timeframes by theauthorization database. Before implementing a software modification,mobile switching system 104 verifies the user ID and authorization codeagainst the authorization database to ensure that the softwaremodification is authorized.

Monitoring system 107 communicates with mobile switching system 104 overcommunication link 126 to detect the software modifications implementedin mobile switching system 104. If a software modification is detected,monitoring system 107 determines a characteristic for the softwaremodification. Monitoring system 107 then selects a set of communicationnetwork personnel based on the characteristic. The selection of networkpersonnel could entail the selection of contact information for devices108 used by the selected network personnel. Monitoring system 107 thentransfers notices indicating the software modification to the selectedset of the communication network personnel over communication network130 and devices 108.

For example, monitoring system 107 could detect that emergency 911software in mobile switching system 104 has been modified. In response,monitoring system 107 could send emails to a first set of networkpersonnel responsible for mobile switching system 104. Monitoring system107 could also send emails to a second set of network personnelresponsible for the emergency 911 service.

Monitoring system 107 also determines when software locks should beimplemented for mobile switching system 104. In response, monitoringsystem 107 transfers a software lock instruction to mobile switchingsystem 104. Mobile switching system 104 receives the software lockinstruction and subsequently receives a corresponding request for asoftware modification from software update system 106. Mobile switchingsystem 104 denies the corresponding request for the softwaremodification in response to the software lock instruction.

Monitoring system 107 also determines a characteristic for the softwarelock, and selects a set of communication network personnel based on thecharacteristic. Monitoring system 107 then transfers a notice indicatingthe software lock to the selected set of the communication networkpersonnel over communication network 130 and devices 108.

For example, network personnel responsible for emergency 911 service maywant to prevent any modifications to the emergency 911 software inmobile switching system 104 during a nearby state fair. These networkpersonnel transfer a lock command for the emergency 911 software tomonitoring system 107, and in response, system 107 transfers acorresponding lock instruction to mobile switching system 104. Inresponse, mobile switching system 104 denies any requests to modify itsemergency 911 software for the duration of the state fair. After thefair, mobile switching system 104 would be unlocked, and the softwaremodifications could be implemented. In addition, monitoring system 107could send emails indicating the software lock to a first set of networkpersonnel responsible for mobile switching system 104 and to a secondset of network personnel responsible for the emergency 911 service.

Communication network 130 could be a Local Area Network (LAN), Wide AreaNetwork (WAN), enterprise network, Internet, telephone network, someother type of communication network, or combinations of these networks.Network personnel devices 108 could be computers, telephones, personaldigital assistants, pagers, or some other type of user communicationdevice. The notice could be an electronic mail, voice message, page,text message, screen pop, audio signal, video signal, or some other formof user communication.

FIG. 2 illustrates mobile switching system 104 in an example of theinvention. Mobile switching system 104 comprises routing system 201,processing system 202, software storage system 203, software updateinterface 204, and monitoring interface 205. Software storage system 203stores software 206. Software 206 includes production software 207 andback-up software 208. Routing system 201 transfers user communicationsamong links 121-124 under the control of processing system 202.Processing system 202 controls the routing of usercommunications—typically in response to signaling received over links121-124. Processing system 202 controls the hand-off of mobile userdevices by antenna systems 101-103. Processing system 202 may alsoperform other operations, such as user authentication, authorization,and accounting. Processing system 202 retrieves and executes productionsoftware 207 to perform these operations. Back-up software 208 is anarchival copy of production software 207.

Software update interface 204 receives requests for softwaremodifications from software update system 106 over link 125. Softwareupdate interface 204 verifies that the requested software modificationis authorized, and if so, interface 204 directs software storage system203 to implement the corresponding software modifications to software206. To control software modifications, software update interface 204implements software locks and unlocks as described herein.

Monitoring interface 205 communicates with monitoring system 107 overcommunication link 126, and in response, monitoring interface 205retrieves software modification information from software storage system203. Monitoring interface 205 transfers the software modificationinformation to monitoring system 107 over communication link 126.Monitoring interface 205 also receives software lock and unlockinstructions from monitoring system 107 over communication link 126, andin response, monitoring interface 205 transfers the software lock andunlock instructions to software update interface 204. Software interface204 controls software modifications in accord with the lock and unlockinstructions.

FIG. 3 illustrates software update monitoring system 107 in an exampleof the invention. Monitoring system 107 includes processing system 301,network interface 302, and user interface 303. Processing system 301includes storage system 304. Storage system 304 stores monitor software305. Processing system 301 is linked to network interface 302 and userinterface 303. Monitoring system 107 could be comprised of a programmedgeneral-purpose computer, although those skilled in the art willappreciate that programmable or special purpose circuitry and equipmentmay be used. Monitoring system 107 may use a distributed architecturewhere operations are allocated to multiple devices that togethercomprise elements 301-305.

Processing system 301 could comprise a computer microprocessor, logiccircuit, or some other processing device. Network interface 302 couldcomprise a network card, modem, port, or some other interface device.User interface 303 could comprise a keyboard, mouse, voice recognitioninterface, microphone and speakers, graphical display, touch screen, orsome other type of user device. Storage system 304 could comprise adisk, tape, integrated circuit, server, or some other memory device.Systems and interfaces 301-304 could be distributed among multipledevices. Processing system 301 retrieves and executes monitor software305 from storage system 304. Monitor software 305 may comprise anoperating system, utilities, drivers, networking software, and othersoftware typically loaded onto a general-purpose computer. Monitorsoftware 305 could comprise an application program, firmware, or someother form of machine-readable processing instructions. When executed byprocessing system 301, monitor software 305 directs processing system301 to operate monitoring system 107 as described herein.

Software Modification Detection

FIG. 4 illustrates the operation of software update monitoring system107 in an example of the invention. The process starts at step 401,where monitoring system 107 monitors the time period for detectingsoftware modifications. If it is not time to detect modifications instep 402, then monitoring system 107 returns to step 401. If it is timeto detect modifications in step 402, then monitoring system 107communicates with mobile switching system 104 to detect softwaremodifications in step 403. If a software modification is not detected instep 404, then monitoring system 107 returns to step 401. If a softwaremodification is detected in step 405, then monitoring system 107determines a characteristic for the software modification in step 405.Monitoring system 107 selects network personnel based on thecharacteristic for the software modification in step 406. Monitoringsystem 107 transfers notices of the software modification to networkpersonnel in step 407, and the process returns to step 401.

Some optional features for the above process are discussed below.

Typically, monitoring system 107 communicates with mobile switchingsystem 104 on a daily basis to detect software modifications, althoughother time periods could be used. Daily detection of softwaremodifications allows the modifications to be accurately dated bymonitoring system 107. Night may be the best time to detect softwaremodifications, since mobile switching system 107 is probably less busyat night.

Monitoring system 107 may use various techniques to detect a softwaremodification. In one technique, monitoring system 107 periodicallyretrieves and stores file names for the various files in software 206.Monitoring system 107 then compares the currently retrieved file namesto the previously stored file names for the various files in software206. A software modification is detected if a currently retrieved filename does not match any previously stored file name (new software). Asoftware modification is detected if a previously stored file name doesnot match any currently retrieved file name (deleted software).

In another technique, monitoring system 107 periodically retrieves andstores version numbers for the various files in software 206. Monitoringsystem 107 then compares the currently retrieved version numbers to thepreviously stored version numbers for the various files in software 206.A software modification is detected for a software file if the currentlyretrieved version number does not match the previously stored versionnumber.

In another technique, monitoring system 107 periodically retrieves andstores file sizes for the various files in software 206. Monitoringsystem 107 then compares the currently retrieved file sizes to thepreviously stored file sizes for the various files in software 206. Asoftware modification is detected for a software file if the currentlyretrieved file size does not match the previously stored file size.

In another technique, monitoring system 107 periodically retrieves andstores descriptions for the various files in software 206. Monitoringsystem 107 then compares the currently retrieved descriptions to thepreviously stored descriptions for the various files in software 206. Asoftware modification is detected for a software file if the currentlyretrieved description does not match the previously stored description.

In another technique, monitoring system 107 periodically retrieves andstores file structures for the various files in software 206. Monitoringsystem 107 then compares the currently retrieved file structures to thepreviously stored file structures for the various files in software 206.A software modification is detected for a software file if the currentlyretrieved file structure and the previously stored file structure differin some aspect.

The file structure could be a call processing table having columns androws. Examples of such table structures are tables that correlate userIDs to home location registrars and tables that correlate called numbersto routes. A software modification could be detected if the currentlyretrieved table structure and the previously stored table structurediffer by a column or differ by a row.

Monitoring system 107 can use various characteristics to select thecommunication network personnel to notify. For each characteristic,monitoring system 107 stores notification information indicating thecommunication network personnel to notify. Characteristics include: theidentity of the mobile switching system, the geographic location of themobile switching system, the identity of an entity that initiated thesoftware modification, the file in the software that is modified, or theaspect in the current file structure that differs from the previous filestructure. For example, the characteristic could be the specific columnor row that differs in a call processing table.

Monitoring system 107 can provide network personnel with remote accessto software modifications over user interface 303 or communicationnetwork 130. For each software modification, monitoring system 107 wouldretrieve and store the modified software. Network personnel could thenrequest the software modification from monitoring system 107, and inresponse, monitoring system 107 would transfer a copy of the softwaremodification to the requesting personnel over user interface 303 orcommunication network 130 and devices 108. For example, a networktechnician could request notification if emergency 911 software ismodified in mobile switching system 104. The network technician wouldthen receive an email if the emergency 911 software is modified, and inresponse to the email, the technician could obtain a copy of themodified emergency 911 software to check its interoperability with othersystems.

Monitoring system 107 can maintain a model of software 206 by date.Monitoring system 107 would store the original software 205. For eachsoftware modification, monitoring system 107 would retrieve and storethe modified software by date. Network personnel could then input a dateto monitoring system 107, and in response, monitoring system wouldprovide a copy of software 205 on that date by accumulating all softwaremodifications to the original software up to that date.

Monitoring system 107 could also verify that mobile switching system 104is maintaining an accurate copy of back-up software 208. During itsperiodic communication to detect software modifications, monitoringsystem 107 would check the file size of production software 207 againstthe file size of back-up software 208. Monitoring system 107 wouldnotify network personnel if the production and back-up file sizes differby a specified amount, since different files sizes could indicate thatback-up software 208 is not an accurate copy of production software 207.

Monitoring system 107 can also search for key terms related to softwaremodifications and provide notice based on key term matches. In someexamples, a software modification includes a description. Thedescription is typically an abstract that states the specific file insoftware 206 that is being changed and that states the purpose andfunctionality of the change. In response to detecting a softwaremodification, monitoring system 107 retrieves the description for thesoftware modification.

Monitoring system 107 stores a key term and associated notificationinformation that was previously input by network personnel throughinterfaces 302-303. Monitoring system 107 searches the description forthe key term to determine if a match exists between the key term and thedescription. If a match is found, then monitoring system 107 selectsnetwork personnel based on the associated notification information andnotifies the selected network personnel. Thus, an individual couldspecify a key term and their email address to monitoring system 107, andin response, monitoring system 107 would email them with a notice whenthe key term shows up in the description of a software modification. Thekey term could be related to an emergency 911 service, videocommunication service, geographic location service, or some otherservice supported by mobile switching system 104.

In addition, monitoring system 107 stores the software descriptions inassociation with the dates of the corresponding software modifications.Subsequently, monitoring system 107 could receive a key term fromnetwork personnel through interfaces 302-303. Monitoring system 107 thensearches the stored descriptions for the key term to determine if amatch exists between the key term and any of the descriptions. If amatch is found, then monitoring system 107 indicates the matchingdescription and the date of the corresponding software modification.This subsequent key term search could be date-bounded if desired. Thus,an individual could specify a key term and the year 2006 to monitoringsystem 107, and in response, monitoring system 107 would search alldescriptions for 2006 software modifications and indicate any matchingdescriptions by date.

Software Lock

FIG. 5 illustrates the operation of mobile switching system 104 andsoftware update monitoring system 107 in an example of the invention. Instep 501, monitoring system 407 awaits a lock command. The lock commandcould be received through user interface 303 or through communicationnetwork 130 and devices 108. If a lock command is received in step 502,monitoring system 107 transfers a lock instruction to mobile switchingsystem 104 over link 126 in step 503. Monitoring system 107 alsotransfers corresponding notice to selected network personnel overnetwork 130 and devices 108. Monitoring system 107 then awaits an unlockcommand. If an unlock command is received in step 504, monitoring system107 transfers an unlock instruction in step 505. The unlock commandcould be received through user interface 303 or through communicationnetwork 130 and devices 108. Monitoring system 107 also transferscorresponding notice to selected network personnel over network 130 anddevices 108, and the process returns to step 501.

To transfer the corresponding notice in steps 503 or 505, monitoringsystem 107 determines a characteristic for the software lock/unlock andthen selects a set of communication network personnel to notify based onthe characteristic. The characteristic could be the identity of mobileswitching system 104, a geographic location of mobile switching system107, the entity who initiated the software modification, or some othermetric.

In step 506, mobile switching system 104 awaits a lock instruction or arequest for a software modification. If a lock instruction is receivedin step 507, mobile switching system 104 denies any correspondingrequest for a software modification and then awaits an unlockinstruction in step 508. If no lock instruction is received in step 507,and if no software modification request is received in step 510, thenthe process returns to step 506. To implement the software lock,monitoring interface 205 receives and passes the lock instruction tosoftware update interface 204 in mobile switching system 204, andsoftware update interface 204 implements the software lock. Softwareupdate interface 204 could implement the software lock for specificfiles, files structures, or users.

If no lock instruction is received in step 507, and if a softwaremodification request is received in step 510, then mobile switchingsystem 104 implements the requested software modification in step 511,and the process returns to step 506. If an unlock instruction isreceived in step 509, then the process proceeds to step 510. If nounlock instruction is received in step 509, then the process returns tostep 508.

Some optional features of the above process are described below. In step508, mobile switching system 104 denies a software modification request.In response to the denial, mobile switching system 104 could indicatethe denied request to monitoring system 107, and monitoring system 107could transfer another notice indicating the denied softwaremodification request to the selected set of the communication networkpersonnel. Typically, this would be the same personnel notified of thelock, but could also include the entity who requested the softwaremodification.

The software lock could be for a specific file in the software. If therequest for the software modification is for this specific file, themobile switching system 104 denies the request to modify the specificfile, but mobile switching system 104 would still implement otherrequests for other software modifications to other files. The specificfile could be a call processing table. The specific file could berelated to an emergency 911 service, a video communication service, ageographic location service, or some other service supported by mobileswitching system 104.

The software lock could be for a specific file structure in thesoftware. If the request for the software modification is for thisspecific file structure, the mobile switching system 104 denies therequest to modify the specific file structure, but mobile switchingsystem 104 would still implement other requests for other softwaremodifications. The specific file structure could be the columns in acall processing table. Thus, an entry in the table could be modified,but the structure of the table (columns and rows) could not be modified.

The software lock could be for software modification requests from aspecific user. If the request for the software modification is from thespecific user, the mobile switching system 104 denies the request tomodify the software, but mobile switching system 104 would stillimplement other requests for software modifications from other users.

The software lock could be for a specified time period, and the timeperiod could be specified by network personnel in the lock command.Monitoring system 107 would then indicate the time period for thesoftware lock in the software lock instruction. Mobile switching system104 would automatically unlock the software after the time period. Thus,if mobile switching system 104 receives a request for a softwaremodification after the time period, mobile switching system 104 wouldimplement the software modification.

The software lock could include an emergency override feature. Theemergency override feature would be used when mobile switching system104 is locked, but an emergency requires the software be modified. Onesolution could be to unlock system 107, but the unlock mechanism may beundesirable or unattainable for some reason. Thus, if mobile switchingsystem 104 receives a request for a software modification including anemergency override code, then mobile switching system 104 wouldimplement the request for the software modification despite the softwarelock. The emergency code could be programmed into software updateinterface 204 or could be supplied in the software lock instruction. Inthe event of an emergency override of a software lock, mobile switchingsystem 104 would indicate the emergency software modification tomonitoring system 107, and monitoring system 107 would transfer a noticeindicating the emergency software modification to the selected set ofthe communication network personnel.

1. A wireless communication network comprising: a plurality of antennasystems configured to exchange user communications with mobile userdevices in a wireless communication format and to hand-off the mobileuser devices between one another; a mobile switching system havingsoftware to control operations and configured to route the usercommunications between the antenna systems and network communicationsystems, to control the hand-offs of the mobile user devices between theantenna systems; and a monitoring system configured to determine that asoftware lock should be implemented for the mobile switching system, andin response, to transfer a software lock instruction to the mobileswitching system; and the mobile switching system is further configuredto receive the software lock instruction, to subsequently receive arequest for a software modification, and to deny the request for thesoftware modification in response to the software lock instruction. 2.The wireless communication network of claim 1 wherein the monitoringsystem is configured to determine a characteristic for the softwarelock, to select a set of communication network personnel based on thecharacteristic, and to transfer a notice indicating the software lock tothe selected set of the communication network personnel.
 3. The wirelesscommunication network of claim 2 wherein the mobile switching system isconfigured to indicate the denied request for the software modificationto the monitoring system, and the monitoring system is configured totransfer another notice indicating the denied request to the selectedset of the communication network personnel.
 4. The wirelesscommunication network of claim 2 wherein the characteristic used toselect the set of the communication network personnel comprises anidentity of the mobile switching system.
 5. The wireless communicationnetwork of claim 2 wherein the characteristic used to select the set ofthe communication network personnel comprises a geographic location ofthe mobile switching system.
 6. The wireless communication network ofclaim 1 wherein the software lock is for a specific file in thesoftware, the request for the software modification is for the specificfile, and the mobile switching system is configured to deny the requestfor the software modification to the specific file but to implementother requests for other software modifications to other files.
 7. Thewireless communication network of claim 6 wherein the specific file is acall processing table.
 8. The wireless communication network of claim 1wherein the software lock is for a specific file structure in thesoftware, the request for the software modification is for the specificfile structure, and the mobile switching system is configured to denythe request for the software modification to the specific file structurebut to implement other requests for other software modifications.
 9. Thewireless communication network of claim 1 wherein the software lock isfor a specific user, the request for the software modification is fromthe specific user, and the mobile switching system is configured to denythe request for the software modification from the specific user but toimplement other requests for other software modifications from otherusers.
 10. The wireless communication network of claim 1 wherein thesoftware lock instruction indicates a time period and the mobileswitching system is further configured to receive another request forthe software modification after the time period, and to implement theother request for the software modification.
 11. The wirelesscommunication network of claim 1 wherein the monitoring system isconfigured to receive a software lock command and determine that thesoftware lock should be implemented based on the software lock command.12. The wireless communication network of claim 1 wherein the monitoringsystem is configured to determine that a software unlock should beimplemented for the mobile switching system, and in response, totransfer a software unlock instruction to the mobile switching system,and the mobile switching system is further configured to receive thesoftware unlock instruction, to subsequently receive another request forthe software modification, and to implement the other request for thesoftware modification in response to the software unlock instruction.13. The wireless communication network of claim 12 wherein themonitoring system is configured to receive a software unlock command anddetermine that the software unlock should be implemented based on thesoftware unlock command.
 14. The wireless communication network of claim13 wherein the monitoring system is configured to transfer a noticeindicating the software unlock to a selected set of communicationnetwork personnel.
 15. The wireless communication network of claim 1wherein the mobile switching system is further configured to receiveanother request for the software modification including an emergencycode, and to implement the other request for the software modificationin response to the emergency code.
 16. The wireless communicationnetwork of claim 15 wherein the software lock instruction indicates theemergency code.
 17. The wireless communication network of claim 15wherein the mobile switching system is configured to indicate theimplemented other request for the software modification to themonitoring system, and the monitoring system is configured to transfer anotice indicating the implemented other request to a selected set ofcommunication network personnel.
 18. The wireless communication networkof claim 1 wherein the software lock is for specific files in thesoftware related to an emergency 911 service, the request for thesoftware modification is for the specific files, and the mobileswitching system is configured to deny the request for the softwaremodification to the specific files but to implement other requests forother software modifications.
 19. The wireless communication network ofclaim 1 wherein the software lock is for specific files in the softwarerelated to a video communication service, the request for the softwaremodification is for the specific files, and the mobile switching systemis configured to deny the request for the software modification to thespecific files but to implement other requests for other softwaremodifications.
 20. The wireless communication network of claim 1 whereinthe software lock is for specific files in the software related to ageographic location service, the request for the software modificationis for the specific files, and the mobile switching system is configuredto deny the request for the software modification to the specific filesbut to implement other requests for other software modifications.